package arrays;

import java.util.Arrays;

public class ProductExceptSelf {
    /**
     * 1.使用除法
     * 2.前缀积｜后缀积 （）：O(n),O(1)
     * @param args
     */
    public static void main(String[] args){
        int[] nums = {1,2,3,4};
        int[] result =new int[nums.length];
        // // 因为索引为 '0' 的元素左侧没有元素，
        result[0]=1;
        for (int i=1;i<nums.length;i++)
            result[i]=result[i-1]*nums[i-1];
//        result[nums.length-1]*=1';
        int r=1;
        for( int i=nums.length-1;i>=0;i--) {
            result[i] = result[i] * r;
            //计算后缀积（累成乘积）
            r=r*nums[i];
        }
            //计算前置积

        System.out.println(Arrays.toString(result));
    }
}
